package com.hzw.saas.web.app.product.param;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * 购买订单参数
 *
 * @author zzl
 * @since 01/27/2021
 */
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "购买订单参数", description = "购买订单参数")
public class ItemOrderParam {

    /**
     * 商品ID
     */
    @ApiModelProperty(value = "商品ID", position = 1, required = true)
    @NotBlank(message = "商品ID不可为空")
    private String itemId;

    /**
     * 支付类型, 1-支付宝,2-微信,3-银联,4-线下,5-余额
     */
    @ApiModelProperty(value = "支付类型, 1-支付宝,2-微信,3-银联,4-余额", position = 2, required = true)
    @NotNull(message = "支付类型不可为空")
    private Integer payType;

    /**
     * 待购买机时的超算帐号ID，为空则新建帐号
     */
    @ApiModelProperty(value = "待购买机时的超算帐号ID，为空则新建帐号", position = 3)
    private String hpcAccountId;

    @ApiModelProperty(value = "支付二维码宽度，内嵌二维码支付时使用", position = 4)
    private int qrCodeWith;

}
